﻿namespace lucere.service.search
{
	/// <summary>
	/// Small Util class used to pass both an idf factor as well as an
	/// explanation for that factor.
	///  
	/// This class will likely be held on a {@link Weight}, so be aware 
	/// before storing any large or un-serializable fields.
	/// </summary>
	public interface IDFExplanation
	{

		///<summary>
		/// the idf factor
		/// </summary>
		float Idf { get; }

		///<summary>
		/// This should be calculated lazily if possible.
		/// </summary>
		string Explain();
	}
}